package com.geekhalo.lego.core.query.support;

import com.geekhalo.lego.core.query.NoQueryService;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;


@Slf4j
public class QueryServiceProxyFactory
        extends BaseQueryProxyFactory {


    public <T> T createQueryService(Class<T> queryService){
        return super.createProxy(queryService);
    }

    @Override
    protected Logger getLogger() {
        return log;
    }

    @Override
    protected QueryServiceMetadata buildMetadata(Class queryService) {
        return QueryServiceMetadata.fromQueryService(queryService);
    }

    @Override
    protected Class getSkipAnnotation() {
        return NoQueryService.class;
    }
}
